home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-06-18 | 8.1 KB | 249 lines | [TEXT/MPS ] |
- NAME:
- Infinity Windoid 2.3
-
-
- FILE:
- README
-
-
- WRITTEN BY:
- Troy Gaul
- Infinity Systems
-
- © 1991-93 Infinity Systems
- All rights reserved.
-
- -------------------------------------------------------------------------------
-
- DESCRIPTION:
- This file contains a description of a standalone code resource, the
- Infinity Windoid, that conforms to a Window DEFinition (WDEF), as defined
- by Apple Computer in Inside Macintosh.
-
- It provides a 'windoid' appearance. A windoid is a floating window
- that appears above document windows in an application and is commonly
- used for things like tool palettes, information windows, and the like.
-
- The WDEF included in the ResEdit file can be used as-is. This WDEF is
- compiled for System 6 and later, but it would be easy to modify the
- source to create one for earlier systems if this is important.
-
- -------------------------------------------------------------------------------
-
- FEATURES:
-
- • Supports System 7-style coloring of windows.
-
- • In System 7, the tinge color set by the user in the Color control
- panel is used.
-
- • Close box can be enabled from NewWindow by setting goAwayFlag.
-
- • Zoom box (special case) implemented, utilized by adding zoomDocProc
- to the proc ID used to create the windoid.
-
- • Title bar can appear along the left of the window if 1 is added to
- the proc ID (with or without a zoom box).
-
- • For MacApp users, the left/top behavior of the proc ID can be
- switched.
-
- • System 6 coloring scheme is also supported (can be set in Kolor or
- a similar control panel).
-
- • In System 7, DeviceLoop is used so the windoid will be drawn
- correctly even when it crosses monitors of differing depths.
-
- • In System 7, indexed color tables are checked to see if there are
- enough different colors to display the color version (like the
- system WDEF).
-
- -------------------------------------------------------------------------------
-
- VERSION HISTORY:
-
- Version 2.3: (June 93 -- MacHack '93 release)
-
- • Now calculates correctly whether to do the System 7 shading on a
- display with less than 8 bits that is set to color mode.
-
- • When drawing the titlebar background, will no longer draw over the
- top of the gadgets, causing them to flash.
-
- • Zoom code no longer is always specific to MicroFrontier products. Now,
- zoomed in/out state can be fully controlled by application
- (this can be done by setting the usrState and stdState as is
- described in Inside Macintosh).
-
- • Added a header file for application use, to simplify incorporation.
-
- • Synchronizes the color window manager port to the black-and-white
- one. Useful for WDrawGIcon message, safer.
-
- • Uses different, simpler logic for creating the properly aligned
- pattern for titlebar (from Mac Prog. Secrets)
-
- • Now gets the aux. window record for colors from the window being
- considered rather than just getting the default one.
-
- • Changed formatting to conform to my changed style used in other code.
-
- • Put in dummy routines for handling the grow box.
-
- • Got rid of some unneeded temporary variables from the CalcWRgn
- selector routine.
-
- • Changed the zoom-handling code to use the spareFlag as a flag
- telling whether there's a zoom box, as per a suggestion in _Inside
- Macintosh: Toolbox Essentials_.
-
- • Fixed a bug where, if a window didn't have a close box, the
- windoid would still send the application a hit in the close box
- if that area of the titlebar was clicked.
-
-
- Version 2.2: (March 93)
-
- • First publicly distributed version.
-
- • Extensive comments added to facilitate understanding and
- modification by others.
-
- • Added support for MacApp-style varcodes.
-
- • Bug in way inColor was determined (needed to do a bit-shift
- before anding with gdFlags) fixed.
-
- • Removed StuffHex of strings used for title bar pattern, now
- calculates these values.
-
- • Fixed bug in logic of how MixColor was calculating the mixture.
-
- • Support for compilation in THINK C 5.0.
-
- • Added way to build so the window are always hilighted
-
-
- Version 2.1: (November 92)
-
- • Reduced code size by making sure no extra code was being linked
- by MPW.
-
- • Removed use of Gestalt for code size reasons.
-
- • Ended the use of function pointers since no advantage was being
- gained by their use.
-
- • Added support for determining if enough different colors were
- available to do System 7-style color like Apple's does.
-
-
- Version 2.0: (January 92)
-
- • Rewritten in C.
-
- • Conditional compilation of some features to facilitate a
- reduced-size version and one that could be distributed.
-
-
- Version 1.2: (June 91)
-
- • System 6 color support added. This feature was suggested by
- Richard R. Harms.
-
- • DeviceLoop support added. (Thanks, MacDTS.)
-
-
- Version 1.1: (May 91)
-
- • Support for System 7-style color titlebars.
-
-
- Version 1.0: (May 91)
-
- • Original version, written in Pascal and based on original
- assembly language, black-and-white windoid WDEF used in
- MicroFrontier products, which was written by Tom Pinkerton.
-
- -------------------------------------------------------------------------------
-
- MAKING WINDOWS FLOAT:
- I just wanted to point out that the windoid WDEF provided here will
- simply give you a window with a smaller, palette-style titlebar. It
- does NOT make that window float above all the others in your program.
- This behavior (which is almost always associated with windows using
- this sort of WDEF) must be implemented into the application's window-
- handling code. This is not necessarily a straightforward thing to do,
- as there is no easy, Apple-provided way. It is not difficult, but some
- care must be taken.
-
- -------------------------------------------------------------------------------
-
- RELEASE/USAGE INFORMATION:
- This WDEF is used in commercial applications by MicroFrontier, Inc.,
- including (but not limited to) Enhance 2.0, Color It! 2.0, and Paint
- It! 1.0.
-
- MicroFrontier and I are hereby making this WDEF available for use in
- other products, commercial or not, with the understanding that you may
- modify the code in whatever ways are necessary for use in your
- product (such as adding a grow box, changing zoom behavior, etc).
- MicroFrontier and Troy Gaul, however, will take no responsibility
- for problems caused by the use of this code.
-
- If you do have any problems, though, don't be afraid do contact me
- by one of the ways listed below. I'll be glad to help. Also, if
- you make modifications to the WDEF, I would appreciate it if you
- would let me know about them. If there are changes that might benefit
- others, I might implement them for a future release.
-
- I do plan to support this WDEF in the future. If you have problems,
- compatibility or otherwise, or if you see a glaring error in the code,
- let me know, and a revision will be made. I will also keep a list of
- e-mail addresses of those people who tell me they are using the
- WDEF and want to receive updates. When a new version is released,
- it (or at least notification of it) will be sent to all such users.
-
- -------------------------------------------------------------------------------
-
- ACKNOWLEDGEMENTS:
- I'd like to pay special thanks to Tom Pinkerton, who wrote a windoid
- WDEF from which I created this one and who taught me how to program the
- Macintosh, and to Richard Harms, who kept pushing me to add features
- (such as the System 6 color support, support for 68000 machines, and
- the MacApp-style), told me about the bugs he found, and prodded me to
- release a version to the public. Also, thanks to MicroFrontier for
- letting me release this WDEF for use by others.
-
- -------------------------------------------------------------------------------
-
- HOW TO CONTACT THE AUTHOR:
- To 'register' your copy of this WDEF if you plan to use it and want
- updates in the future, send me your e-mail address(es). Also, use
- these to contact me with any problems.
-
- Troy Gaul
- Infinity Systems
- 4914 EP True Parkway
- Suite 205
- West Des Moines, IA 50265
-
- MicroFrontier, Inc.
- 3401 101st Street
- Suite E
- Des Moines, IA 50322
- (515) 270-8109
-
- Internet: t-gaul@grayhawk.rent.com
-
- Applelink: mfrontier
-
- America Online: ntwing
- mfrontier
-
- CompuServe: 72123,567
-
- FAX: (515) 278-6828
-
- *******************************************************************************
-